// 1. 导入fs模块
const fs = require('fs');

let p = new Promise((resolve, reject) => {
    fs.readFile('./10-fs文件读取异步方法.js', (err, data) => {
        if (err) {
            // console.log('错误', err);
            // reject('倒立喝水')
            reject(err)
        } else {
            // console.log('数据', data);
            // resolve('吃溜肉段')
            resolve(data)
        }
    })
})

// 处理方式  - 有结果之后才能处理。
p.then((val) => {
    console.log("成功", val);
}, (rea) => {
    console.log('失败', rea);
})




// 2.定义变量并保存一个promise实例对象
// 2. 调用读取文件方法 fs.readFile(url,cb)
// 2.1 url : 文件路径
// 2.2 cb(err,data): 回调函数
// 2.2.1 err 错误对象信息
// 2.2.2 data 读取的数据 buffer数据
// 2.2.2.1 toString() 转成字符串
// 2.2.3 判断err对象是否存在
// 2.2.3.1 如果存在，调用promise内的reject(err)
// 2.2.3.2 如果不存在，调用promise内的resolve(data)

// 3. 调用promise实例的then方法
// 3.1 传入resolve/reject 这2个回调函数
// 3.2 resolve/reject函数接收从执行器函数传入的参数